<?php

declare(strict_types=1);

namespace think\auth\facade;

use think\Facade;
use Lcobucci\JWT\Token as JwtToken;
use think\auth\struct\TokenConfig;

/**
 * @package think\auth\facade
 * @see \think\auth\service\Token
 * @mixin \think\auth\service\Token
 * @method static string Create(int|string $identifier, array $claims = [])
 * @method static bool Verify(string $token = null)
 * @method static bool|JwtToken Fetch(string $handle = '')
 * @method static JwtToken Parse(string $token)
 * @method static JwtToken Renewal(JwtToken $token)
 * @method static void Destroy(JwtToken $token)
 * @method static TokenConfig Options()
 */
class Token extends Facade
{
    /**
     * 获取当前Facade对应类名（或者已经绑定的容器对象标识）.
     *
     * @return string
     */
    protected static function getFacadeClass(): string
    {
        return \think\auth\service\Token::class;
    }
}
